Thema Datum  Von Nutzer Rating
Antwort
Rot In der Schleife drucken lassen | Mein Code spinnt rum
12.04.2017 13:10:08 Felix
****
NotSolved
12.04.2017 18:27:35 BigBen
NotSolved
13.04.2017 08:53:02 Felix
NotSolved
13.04.2017 14:01:18 BigBen
NotSolved
13.04.2017 14:30:49 BigBen
NotSolved
13.04.2017 14:38:01 BigBen
NotSolved
13.04.2017 15:45:11 Felix
NotSolved
13.04.2017 17:31:47 BigBen
NotSolved

Ansicht des Beitrags:
Von:
Felix
Datum:
12.04.2017 13:10:08
Views:
959
Rating: Antwort:
  Ja
Thema:
In der Schleife drucken lassen | Mein Code spinnt rum

Moin Moin,

ich bin derzeit dabei einen Serienbrief zu erstellen, als PDF und WORD zu speichern und danach zu drucken.

Ich bin kein VBA Profi, daher sieht der Code ziemlich zusammengewürfelt aus.

Das Problem ist das folgende: Ich muss den Serienbrief drucken jeweils 2-4x.

Ich möchte aber eine Sortierung haben bei der gilt: 1. Stapel, dann 2. Stapel, dann 3. Stapel und nicht 3x 1. Stapel usw...

Leider druckt der bei meinem Code die letzte Zeile als erstes - danach funktioniert alles regulär. Aber immer ist die letzte Seite als erstes gedruckt... Das nervt mich :D

Könntet ihr da einmal drübergucken? Da ich blutiger Anfänger bin habe ich mich mit GoTo etc durchgewurschtelt.. Nicht meckern ;)

DANKE EUCH!

 

INFO: strinbox und strinboxende sind Inputfelder (Zeilen aus einer Exceltabelle). Das (-1) wird genutzt, da die Zeile im Serienbrief und in der Exceltabelle nicht übereinstimmen (Überschriften und so)

 

(Hier Code zum Speichern, der funktioniert aber)

GoTo Durchlauf
Durchlauf:
    With ActiveDocument.MailMerge
        .DataSource.ActiveRecord = strInbox - 1
      Do
            .Destination = wdSendToNewDocument
            .SuppressBlankLines = True
            With .DataSource
                .FirstRecord = .ActiveRecord
                .LastRecord = .ActiveRecord
                sBrief = Path & .DataFields("VBA").Value & ".pdf"
            End With
            .Execute Pause:=False
            If drucken = vbYes Then
            ActiveDocument.PrintOut
            End If
            ActiveDocument.Close False

            If .DataSource.ActiveRecord < strInboxende - 1 Then
                .DataSource.ActiveRecord = wdNextRecord
            Else
                Exit Do
            End If
            Loop
             i = i + 1

             If i <> Schleife Then
            GoTo Durchlauf
            End If

 

 

 

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot In der Schleife drucken lassen | Mein Code spinnt rum
12.04.2017 13:10:08 Felix
****
NotSolved
12.04.2017 18:27:35 BigBen
NotSolved
13.04.2017 08:53:02 Felix
NotSolved
13.04.2017 14:01:18 BigBen
NotSolved
13.04.2017 14:30:49 BigBen
NotSolved
13.04.2017 14:38:01 BigBen
NotSolved
13.04.2017 15:45:11 Felix
NotSolved
13.04.2017 17:31:47 BigBen
NotSolved